home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Controls / Visual Basic Controls.iso / vbcontrol / sgwnd10 / mousewhe.cls < prev    next >
Encoding:
Visual Basic class definition  |  1998-08-01  |  1.1 KB  |  47 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4. END
  5. Attribute VB_Name = "CMouseWheel"
  6. Attribute VB_GlobalNameSpace = False
  7. Attribute VB_Creatable = True
  8. Attribute VB_PredeclaredId = False
  9. Attribute VB_Exposed = False
  10. Option Explicit
  11.  
  12. Private mWnd As Window      ' Window whose mouse wheel messages we are going to track
  13. Implements IsgMessageSink   ' Message sink
  14.  
  15. Public Property Let HWND(wnd As Long)
  16.     On Error GoTo Error_
  17.     
  18.     If mWnd Is Nothing Then
  19.         Set mWnd = New Window
  20.     Else
  21.         ' Disable all messages
  22.         mWnd.EnableMessage wm_ALL, False
  23.     End If
  24.     
  25.     mWnd.HWND = wnd
  26.     mWnd.EnableMessage wm_MOUSEWHEEL
  27.     mWnd.Callback = Me
  28.     mWnd.Hooked = True
  29.  
  30.     
  31.     Exit Property
  32. Error_:
  33.     MsgBox Error$
  34. End Property
  35.  
  36. Public Property Get HWND() As Long
  37.     HWND = mWnd.HWND
  38. End Property
  39.  
  40.  
  41. Private Sub IsgMessageSink_Message(ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long, ByRef result As Long)
  42.     Dim s$
  43.     s = "Message: " + CStr(msg) + ", " + CStr(wParam) + ", " + CStr(lParam)
  44.     MsgBox s
  45.    
  46. End Sub
  47.